RSRemote Standalone Installation
You can install RSRemote instances inside the same network on machines other than the core machines or in other networks to act as gateways between networks that are otherwise not directly accessible.
Adding RSRemote instances does not require reconfiguration of the core nodes. After you install them on a new machine and configure them to connect back to the main cluster through the RSMQ configuration, they register themselves and become available for use immediately.
System Requirements
You can install one or more instances of RSRemote on separate machines. If you choose to do so, ensure that each such machine meets the following software and hardware requirements.
Hardware Requirements
If you choose to install RSRemote on a separate machine, ensure that the machine meets the following minimum hardware requirements.
CPU
- 4-core CPU, server-class
Memory
- On top of the OS memory requirements, ensure that you have additional 2 GB (base) + 1 GB for each RSRemote that you run.
Storage
- On top of the OS storage requirements, ensure that you have the additional 250 MB for each RSRemote that you run.
Software Requirements
Ensure that the RSRemote machine has the following software installed:
OS
Linux OS:
Red Hat Enterprise Linux 7.0
Red Hat Enterprise Linux 8.0
Red Hat Enterprise Linux 9.0
noteIf you are installing or upgrading Resolve Actions Pro on RHEL, you must install OpenSSL 1.1.1. Refer to the instructions here for guidance.
CentOS Linux 7.0
noteDue to an Erlang dependency, the OpenSSL package has to be updated to version 1.0.2 on CentOS 7 versions earlier than 7.4.
CentOS Linux 8.0
Windows OS:
- Microsoft Windows Server 2012
- Microsoft Windows Server 2016
- Microsoft Windows Server 2019
- Microsoft Windows 10
Java
- Open JDK 11
Pre-Installation Tasks
The tasks and information in this section aim to ensure that your environment is properly configured before you start the actual RSRemote installation.
Opening Required Network Ports
The ports in the following table are the default ports used by standalone RSRemote instances. Ensure that the ports are open bidirectionally on your OS and or hardware/software firewall.
If any of the ports cannot be used due to security constraints, consider setting up a proxy for RSRemote. See the Proxy Connection for details.
Service | Port | Protocol | Description |
---|---|---|---|
AMQP | 4004 | TCP/IP | Used to send messages to and receive messages from the core components. |
Installing RSRemote on Linux
Your Resolve representative will provide you with a .tar.gz file containing the installation files for the Linux version of RSRemote for standalone installation.
Take the following steps to make a standalone RSRemote deployment on a Linux machine:
- Log in to the Linux machine as root.
- Create a Linux user who will run RSRemotes.
We recommend using theresolve
name as it is pre-configured in the Blueprint files, but you can use any name that you want. This Linux user is referred to as "theresolve
user" for the remainder of the document.groupadd resolve
useradd -g resolve resolve
passwd resolve - Create an installation directory and give ownership to the resolve user.
The installation directory is where RSRemote will run from. The recommended location is under/opt
:mkdir /opt/resolve
chown resolve:resolve /opt/resolve - Log out as root and log in as the resolve user.
- Enter the installation directory:
cd /opt/resolve
- Use your preferred method to transfer a copy of the file to the installation directory.
- Unpack the installation package:
tar -xzvf rsremote-linux64-X.X.X.X.tar.gz
- Optionally, delete the
.tar.gz
package.rm rsremote-linux64-X.X.X.X.tar.gz
- Configure the provided
blueprint-rsremote.properties
configuration file. - Run the installer with the configuration file:
./install-rsremote.sh blueprint-rsremote.properties
After the end of the installation, running bin/status.sh
should show the RSMGMT
and RSREMOTE
services as UP
.
Installing RSRemote on Windows
You can run the Windows installer in interactive or unattended mode:
- The interactive mode uses a standard wizard-style GUI to prompt you for the required installation settings.
- The unattended mode allows you to install RSRemote without any interaction by passing a configuration file. It is useful when installing from a script or on headless Windows Server Core.
The installer can create a Windows scheduled task that is later used to restart RSRemote on configuration changes that you make through the Web UI. To do that, the installer asks you to provide a local or a domain Windows user account that has permissions to create Scheduled Tasks.
If you choose not to provide the account, you can create the Scheduled Task manually. Failing to create the Scheduled Task either automatically or manually means that you will have to restart RSRemote manually after making configuration changes from the Web UI.
Using Interactive Mode
Your Resolve representative will provide you with the following installation files:
- A Windows installer executable
- A sample
blueprint-rsremote.properties
configuration file
Take the following steps to make a standalone RSRemote deployment on a Windows machine:
- Log in to the Windows machine with an administrative user.
- Use your preferred method to transfer a copy of the files to the Windows machine.
- Configure the provided
blueprint-rsremote.properties
configuration file. - Run the installer.
- On the Welcome screen, click Next.
- On the Choose Components screen, click Next.
- On the Resolve Configuration Information screen, do the following and finally click Next:
- In Blueprint file, specify the location of the
blueprint-rsremote.properties
configuration file that you configured. - (Optional) In the first credentials field, enter a user account name with permissions to manage Windows Scheduled Tasks. Use the
DOMAIN\Username
format. UseLOCAL
as the domain for local users.
Providing the account allows Resolve Actions Pro to create a Windows scheduled task to restart RSRemote on configuration changes that you make through the Web UI. Not providing the account means that you will have to restart RSRemote manually after making such configuration changes.
The account credentials are stored by Windows Task Scheduler. - (Optional) In the second credentials field, enter the password for the Windows account.
- On the Choose Install Location screen, select where to install RSRemote and then click Next.
- After the installation completes, click Close.
- In Blueprint file, specify the location of the
After the end of the installation, you should see the RSMgmt and RSRemote services in the Windows Services snap-in, both having the Running status.
Using Unattended Mode
Your Resolve representative will provide you with the following installation files:
- A Windows installer executable
- A sample
blueprint-rsremote.properties
configuration file - An
rsremote.ini
unattended installation configuration file
Take the following steps to make a standalone RSRemote deployment on a Linux machine:
- Log in to the Windows machine with an administrative user.
- Use your preferred method to transfer a copy of the files to the Windows machine.
- Customize the
rsremote.ini
unattended installation configuration file:[Field 3]
State
—set to the full path to theblueprint-rsremote.properties
that you configured.
Example:State="C:\Temp\blueprint.properties"
- If you are want the installer to create a Windows scheduled task for automatic RSRemote management:
[Field 4]
State
—set to the username of a Windows account that has permissions to create Windows Scheduled Tasks, in the DOMAIN\username format.
Example:LOCAL\resolve
[Field 5]
State
—set to the password of a Windows account that has permissions to create Windows Scheduled Tasks.
The account credentials are stored by Windows Task Scheduler.
- Configure the provided
blueprint-rsremote.properties
configuration file. - Start a command prompt as Administrator:
- Open the Start menu.
- Type
cmd
. - Right click the Command Prompt search result and click Run as administrator.
- Navigate to the directory where you stored the installation executable.
For example:cd D:\downloads\rsremote-win64-7.4.0.0.exe
- Start the installer:
rsremote-win64-X.X.X.X.exe /S /FILE="rsremote.ini"
Provide the full .ini file path if you stored it in a different location.
Manually Creating a Scheduled Task
If you choose not to provide an administrative account to the installer to take advantage of the automatic creation of a Windows Scheduled Task for RSRemote management, you can still create one manually.
Take these steps to manually create a Scheduled Task:
- Open a PowerShell window and type the following command:
cscript.exe "<install-dir>\rsmgmt\bin\installcrontab.vbs" "<install-dir>" 30 "<domain>\<username>" "<password>"
Where:- install-dir is the base path where you installed RSRemote, typically
C:\Program Files\Resolve Systems
. Do not end it with a backslash. - domain is the AD domain of a user who has permissions to create and run Scheduled Tasks, or LOCAL for local users.
The credentials for this user will be stored in the Scheduled Task. - username is the user's username.
- password is the user's password.
For example:cscript.exe 'C:\Program Files\Resolve Systems\rsmgmt\bin\installcrontab.vbs' 'C:\Program Files\Resolve Systems' 30 "AzureAD\resolve" "pass123"
- install-dir is the base path where you installed RSRemote, typically
- Finally, verify that you see the task in Windows Task Scheduler:
- Open the Start menu.
- Type
Task Scheduler
and click the entry. - In the left panel, expand Task Scheduler (Local) > Task Scheduler Library and look for a pair of
rscron
entries.
Usually, the pair is under Program Files > Resolve Systems. This path changes according to the installation path you have chosen.
Configuring the RSRemote Blueprint
Before you run the RSRemote installation, you need to prepare a Blueprint file listing all configuration settings needed by the service. The RSRemote Blueprint is similar to the Blueprint used for the main Actions Pro installation but omits most of the properties.
Resolve provides a Blueprint template to help you more quickly set up RSRemote. It is named blueprint-rsremote.properties
by default but you can uses any other name.
You can either modify the Blueprint template or make a copy and modify that. Later, when running the installer, you can specify the location of the Blueprint file.
After installation, the installation Blueprint file becomes the basis for the permanent Blueprint file.
Take the following steps to prepare an installation Blueprint file:
- On the RSRemote machine, open the Blueprint file for editing.
- Edit the values of the properties listed in the tables below to match your environment.
The following table lists the required Blueprint properties:
Property | Description | Default Value |
---|---|---|
CLUSTERNAME | Name of the RSSearch cluster. Set it to the same name used on the cluster's core machines. | RESOLVE |
LOCALHOST | The hostname or IP address of the local server. Change to the actual IP address or hostname of the machine. | 127.0.0.1 |
RSMQ_PRIMARY_HOST | The hostname or IP address of the primary RSMQ node. | 127.0.0.1 |
RSMQ_PRIMARY_PORT | Port used by the RSMQ service on the primary node. | 4004 |
RSMQ_BACKUP_HOST | Only in clustered installations The hostname or IP address of the secondary RSMQ node. | 127.0.0.1 |
RSMQ_BACKUP_PORT | Port used by the RSMQ service on the secondary node. | 4004 |
Configuring Multiple RSRemote Instances on the Same Server
At times, mostly in standalone clusters, it may be necessary or beneficial to configure multiple RSRemote instances on the same server. The following steps can be used to configure multiple RSRemotes on the same server and blueprint.
- Stop the services:
- Linux:
<install dir>/bin/stop.sh all -k
- Windows:
<install-dir>\bin\stop.bat all -k
- Linux:
- Duplicate the
rsremote
directory located within the RSRemote installation directory with a new name.
For example, usersremote-gw
. - Make a backup copy of
<install-dir>/rsmgmt/config/blueprint.properties
. - Open the
<install-dir>/rsmgmt/config/blueprint.properties
file for editing. - Increment the value of
rsremote.instance.count
by 1.
For example, if is was 1, increase it to 2. - Copy the
rsremote.instance1.name
line and in the property name, replace1
with a higher, unique number.
For example, you can name the next two instance propertiesrsremote.instance2.name
andrsremote.instance3.name
. - Set the
rsremote.instance<N>.name
property to the name of the directory in which you duplicated thersremote
directory.
For example,rsremote.instance2.name = rsremote-gw
. - Duplicate all other properties that start with
rsremote
and rename them to start with the new instance name.
For example,rsremote-gw.run.Xmx = 512
. - Set new values to the new instance properties as necessary. More specifically:
- Change
<instance2name>.esb.queue.name1
to a new queue name. - For gateway configurations, do either of the following:
- Set
<instance2name>.receive.<gateway>.active
tofalse
- Set
<instance2name>.receive.builder.queue
to a different value.
- Set
- Change
- Reconfigure the instance's log file:
- Open
<install-dir>/<instance-dir>/config/log4j2.xml
for editing.
Where instance-dir is the name of the directory where you duplicated thersremote
directory. - Find the following line:
<RollingFile filePattern="rsremote/log/$${date:yyyy-MM}/rsremote-%d{MM-dd-yyyy}-%i.log.zip" fileName="rsremote/log/rsremote.log" name="RSREMOTE">
- Replace it with the following line:Where instance-dir is the name of the directory where you duplicated the
<RollingFile filePattern="<instance-dir>/log/$${date:yyyy-MM}/rsremote-%d{MM-dd-yyyy}-%i.log.zip" fileName="<instance-dir>/log/rsremote.log" name="<instance-dir>">
rsremote
directory. - Save the file.
- Reconfigure the RSRemote deployment:
<install dir>/bin/config.sh -r
The-r
option forces all local components to reset their GUID values, including the original instance, ensuring that the new RSRemote instance does not share a GUID with the original instance. - Restart the services:
<install dir>/bin/run.sh all
Verifying the RSRemote Installation
You can use either RSConsole or the Web UI to verify your standalone RSRemote installation and configuration.
Take these steps to verify your standalone RSRemote installation using RSConsole:
- Log in to a core Actions Pro machine where RSConsole is installed.
- Start RSConsole:
<actions-pro-home>/rsconsole/bin/run.sh
- Log in using:
- The default username and password
admin:resolve
if you haven't change them in the Blueprint file. - The new credentials if you have changed them in the core Blueprint file.
- The default username and password
- Connect to the RSRemote topic:
CONNECT RSREMOTE
- Change to the info directory:
CD info
- Run the info command:
info
- In the command output, verify that you see all instances that you configured.
Take these steps to verify your standalone RSRemote installation from the Web UI:
- Open a web browser and log in to Actions Pro.
- From the Main Menu, go to System Administration > Status Information > List Registration.
- Verify that you see new RSMgmt and RSRemote entries corresponding to the new RSRemote installation.
Troubleshooting
Use the information in this section to resolve common issues that may occur during installation.
Installation Log File Location
On Windows, you can find the installation log in <install-folder>\Resolve Systems\rsmgmt\log\rsmgmt.log
.
On Linux, you can find the installation log in <install-dir>/resolve/rsmgmt/log/rsmgmt.log
.
The RSRemote services are not running on Linux
RSMgmt and RSRemote are listed as DOWN
when you execute status.sh
.
Probable Cause
You Blueprint file in not configured properly.
Possible Resolution
Do the following to reconfigure RSControl:
- Double-check your changes to
/rsmgmt/confing/blueprint.properties
.
See Configuring the RSRemote Blueprint for details. - Restart the services:
<install-dir>/bin/restart.sh all
- Verify that the services show as UP:
<install-dir>/bin/status.sh
The RSRemote cron Entry is Missing
The RSRemote installer creates a new crontab
entry to run rsremotecron.jar
repeatedly on a configurable interval. If, for any reason, this entry was not created during installation, configuration changes that you make to the RSRemote instance or its gateways from the Web UI fail to apply.
After a successful installation, you see the following entries in the crontab for the resolve user:
crontab -l
* * * * * sleep 30; /opt/resolve/jdk/bin/java -cp /opt/resolve/rsmgmt/cron/rscron.jar:/opt/resolve/rsmgmt/cron/* com.resolve.rscron.CronCommand /opt/resolve/rsmgmt/cron/commandsAndSignaturesFile /opt/resolve/rsmgmt/cron/rscronpublickey
* * * * * /opt/resolve/jdk/bin/java -cp /opt/resolve/rsmgmt/cron/rscron.jar:/opt/resolve/rsmgmt/cron/* com.resolve.rscron.CronCommand /opt/resolve/rsmgmt/cron/commandsAndSignaturesFile /opt/resolve/rsmgmt/cron/rscronpublickey
Probable Cause
You Blueprint file in not configured properly or there was a problem running the crontab configuration script.
Possible Resolution
Do the following to reinstall the crontab entries:
Ensure that the
rscron.interval
property is set in/rsmgmt/confing/blueprint.properties
.
The recommended value is 30 (in seconds).Stop the services:
<install-dir>/bin/stop.sh all
Reconfigure RSRemote:
<install-dir>/bin/config.sh
Restart the services:
<install-dir>/bin/run.sh all
Requirements
Installing crontab requires the same credentials as for the role performing a fresh installation or upgrade and also crond
must be running.